<?php
/**
*	此文件是流程模块【tyjzbcgnew.装备采购流程NEW】对应控制器接口文件。
*/ 
class mode_tyjzbcgnewClassAction extends inputAction{
	
	/**
	*	重写函数：保存前处理，主要用于判断是否可以保存
	*	$table String 对应表名
	*	$arr Array 表单参数
	*	$id Int 对应表上记录Id 0添加时，大于0修改时
	*	$addbo Boolean 是否添加时
	*	return array('msg'=>'错误提示内容','rows'=> array()) 可返回空字符串，或者数组 rows 是可同时保存到数据库上数组
	*/
	protected function savebefore($table, $arr, $id, $addbo){
        if($addbo != true){
            $billEntry = m('flow_bill')->getone('modeid = 94 and mid = '.$id, 'status,nstatus,tuiid,nowcheckid,optid,isturn,uid');
            if ($billEntry) {
                if($billEntry["status"]==2){
                    $nowcheckid = $billEntry["optid"];
                }else{
                    if($billEntry["isturn"]==1){
                        $nowcheckid = $billEntry["nowcheckid"];
                    }else{
                        $nowcheckid = $billEntry["optid"];
                    }
                }
                $checkArr = explode(",", $nowcheckid);
                $iscanUp = false;
                for ($i = 0; $i < count($checkArr); $i++) {
                    if ($this->adminid == $checkArr[$i]) {
                        $iscanUp = true;
                    }
                }
                $log = m('flow_log')->getall('modeid=94 and mid ='.$id.' order by id desc');
                if(!empty($log) && $log[0]['courseid']==112 && $this->adminid==$billEntry['uid']){
                    $iscanUp = true;
                }
                if($billEntry['status']==2 && $billEntry['nstatus']==2 && $billEntry['tuiid']<1 && $this->adminid==$billEntry['uid']){
                    $iscanUp = true;
                }

                if (!$iscanUp) {
                    $this->backmsg('您没有当前节点的修改权限');
                }
            } else {
                $this->backmsg("流程不存在");
            } 
        }
        
	}
	
	/**
	*	重写函数：保存后处理，主要保存其他表数据
	*	$table String 对应表名
	*	$arr Array 表单参数
	*	$id Int 对应表上记录Id
	*	$addbo Boolean 是否添加时
	*/	
	protected function saveafter($table, $arr, $id, $addbo){
	    //新增时处理相关数据
	    if($addbo == true) {
            $entry = m("zbcg_new")->getone("id=".$id);
            if ($entry) {
                $comid = $entry["comid"];
                $companyEntry = m("company")->getone("id=".$comid);
                m("zbcg_new")->update(array('proxycompany'=>$companyEntry['name']), 'id='.$id);
                m("zbcg_new_info")->update(array("addtime"=>date("Y-m-d H:i:s")), "mid=".$id);
            }
        }else{
	        $log = m('flow_log')->getone('modeid=94 and status = 1 and courseid=112 and mid ='.$id , 'optdt');
            //var_dump($log);exit;
	        //判断是否二级单位终审已通过
	        if(!empty($log)) {
	            //判断项目是否有收文日期为空的
                $ids = m('zbcg_new_info')->getall('mid = '. $id .' and receiverdate is null', 'id');
                if(!empty($ids)) {
                    //如果有项目的收文日期为空，更新收文日期（收文日期为二级单位终审通过时间）
                    m('zbcg_new_info')->update(array('receiverdate' => $log['optdt']), 'mid='.$id);
                }
            }
        }
	}

	public function sel_dept($id){
	    $info = m('zbcg_new')->getone('id='.$id, 'uid');
        if(empty($id)){
            $adminid      = (int)$this->getsession('adminid',0);
            //var_dump($adminid);exit;
        }else{
            $adminid = $info['uid'];
        }
	    $adminEntry = m("admin")->getone("id=".$adminid);
        $str = "<select name='dept0_0'>";
        $str .= "<option value=''>--请选择处室--</option>";
	    if ($adminEntry) {
	        $deptid = $adminEntry["deptid"];
//            $deptInfo = m("dept")->getone("id=".$deptid);
            $subDeptInfo = m("dept")->getall("pid=".$deptid);
            if ($subDeptInfo) {
                for ($i=0;$i<count($subDeptInfo);$i++) {
                    $str .= "<option value='".$subDeptInfo[$i]["name"]."'>".$subDeptInfo[$i]["name"]."</option>>";
                }
            }
        }
        $str .= "</select>";

	    return $str;
    }

    public function fundsType()
    {
        $data = '一般公共预算资金,政府性基金资金,中央转移资金,自筹资金,追加资金,上年结转资金,财政资金,体育彩票公益金';
        $data = explode(',', $data);
        $arr = array();
        foreach($data as $key=>$value){
            $arr[] = array(
                'value' => $value,
                'name' => $value,
            );
        }
        return $arr;
    }

    public function details()
    {
        $data = '办公费,印刷费,咨询费,手续费,水费,电费,邮电费,取暖费,物业管理费,差旅费,因公出国（境）费用,维修（护）费,租赁费,会议费,培训费,公务接待费,专用材料费,被装购置费,专用燃料费,劳务费,委托业务费,工会经费,福利费,公务用车运行维护费,其他交通费用,税金及附加费用,其他商品和服务支出,房屋建筑物购建,办公设备购置,专用设备购置,基础设施建设,大型修缮,信息网络及软件购置更新,物资储备,公务用车购置,其他交通工具购置,文物及陈列品购置,无形资产购置,其他基本建建设支出,体育设备';
        $data = explode(',', $data);
        $arr = array();
        foreach($data as $key=>$value){
            $arr[] = array(
                'value' => $value,
                'name' => $value,
            );
        }
        return $arr;
    }
}